<!--
 * @Description: jsx小练习
 * @notes: 
 * @Author: 台火山
 * @Date: 2024-04-21 17:44:52
 * @LastEditors: 台火山
 * @LastEditTime: 2024-04-21 17:59:09
-->
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>hello react</title>
</head>

<body>
    <!-- 准备号一个“容器” -->
    <div id="test"></div>
    <!-- 引入 react 核心库 -->
    <script type="text/javascript" src="../js/react.development.js"></script>
    <!-- 引入 react-dom,用于支持react操作 dom -->
    <script type="text/javascript" src="../js/react-dom.development.js"></script>
    <!-- 引入 babel，用于将 jsx 转化为js -->
    <script type="text/javascript" src="../js/babel.min.js"></script>

    <script type="text/babel"> /* 此处一定要写 babel */
        /* 
            一定注意区分：【js语句（代码）】与【js表达式】
                1.表达式：一个表达式会产生一个值，可以放在任何一个需要值得地方
                    例：
                        (1).a
                        (2).a+b
                        (3).demo(1) // 函数调用表达式
                        (4).arr.map()
                        (5).function test(){}
                2.语句(代码)
                    例：
                        (1).if(){}
                        (2).for(){}
                        (3).switch(){case:xxx}
        */
        // 模拟数据
        const dataArray = ['Angular', 'React', 'Vue'];
        // 1.创建虚拟DOM
        const VDOM = (
            <div>
                <h1>前端JS框架列表</h1>
                <ul>
                    {dataArray.map((val,index) => {
                        return <li key={index}>
                            {val}
                        </li>
                    })}
                </ul>
            </div>
        )
        // 2.渲染虚拟DOM到页面
        ReactDOM.render(VDOM, document.getElementById('test'));
    </script>
</body>

</html>